// Find the right method, call on correct element function checkInIframe() { try { return window.self !== window.top; } catch (e) { return true; } } let inIframe = checkInIframe(); function launchFullscreen(element) { if(inIframe && !gamesLobby) { window.parent.postMessage({name: "fullscreen-on"}, "*"); return false; } if(element.requestFullscreen) { element.requestFullscreen(); } else if(element.mozRequestFullScreen) { element.mozRequestFullScreen(); } else if(element.webkitRequestFullscreen) { element.webkitRequestFullscreen(); } else if(element.msRequestFullscreen) { element.msRequestFullscreen(); } } function exitFullscreen() { if(inIframe && !gamesLobby) { window.parent.postMessage({name: "fullscreen-off"}, "*"); return false; } if (document.exitFullscreen) { document.exitFullscreen(); } else if (document.mozCancelFullScreen) { document.mozCancelFullScreen(); } else if (document.webkitExitFullscreen) { document.webkitExitFullscreen(); } } function dumpFullscreen() { //console.log("document.fullscreenElement is: ", document.fullscreenElement || document.mozFullScreenElement || document.webkitFullscreenElement || document.msFullscreenElement); //console.log("document.fullscreenEnabled is: ", document.fullscreenEnabled || document.mozFullScreenEnabled || document.webkitFullscreenEnabled || document.msFullscreenEnabled); } // Events document.addEventListener("fullscreenchange", function(e) { // console.log("fullscreenchange event! ", e); $('.fullscreen-bt').toggleClass('active'); }); document.addEventListener("mozfullscreenchange", function(e) { //console.log("mozfullscreenchange event! ", e); $('.fullscreen-bt').toggleClass('active'); }); document.addEventListener("webkitfullscreenchange", function(e) { //console.log("webkitfullscreenchange event! ", e); $('.fullscreen-bt').toggleClass('active'); }); document.addEventListener("msfullscreenchange", function(e) { //console.log("msfullscreenchange event! ", e); $('.fullscreen-bt').toggleClass('active'); }); window.addEventListener("message", function(event) { let message = event.data; if(message.name !== undefined) { if (message.name === 'fullscreen-bt') { let active = message.active; if(active) $('.fullscreen-bt').addClass('active'); else $('.fullscreen-bt').removeClass('active'); } } });